Dylan (ngôn ngữ lập trình)

Dylan là một ngôn ngữ lập trình đa mẫu hình có hỗ trợ hàm, lập trình hướng đối tượng (OOP), độngphục hồi trong khi cung cấp một mô hình lập trình được thiết kế để hỗ trợ sinh mã máy hiệu quả, bao gồm kiểm soát chi tiết các hành vi động và tĩnh. Nó được tạo ra vào đầu những năm 1990 bởi một nhóm do Apple Computer lãnh đạo.Một tổng quan ngắn gọn và kĩ lưỡng về ngôn ngữ này có thể tìm thấy được trong Hướng dẫn Tham khảo Dylan.[1]Dylan xuất phát từ SchemeCommon Lisp, và thêm vào một hệ thống đối tượng tích hợp có nguồn gốc từ Common Lisp Object System (CLOS). Trong Dylan, tất cả các giá trị (bao gồm số, ký tự, hàm và lớp) là các đối tượng hạng nhất (first-class object). Dylan hỗ trợ đa kế thừa, đa hình, đa điều phối (multiple dispatch), đối số từ khóa (keyword argument), nội quan đối tượng (object introspection), macro mở rộng cú pháp dựa trên mẫu, và nhiều tính năng nâng cao khác. Các chương trình có thể thể hiện sự kiểm soát chi tiết đối với tính năng động, thừa nhận các chương trình chiếm sự liên tục giữa các chương trình động và tĩnh, và hỗ sự phát triển tiến hóa (cho phép tạo nguyên mẫu nhanh thông qua quá trình tinh chỉnh và tối ưu hóa tăng dần).Mục tiêu thiết kế chính của Dylan là trở thành một ngôn ngữ động, phù hợp để phát triển phần mềm thương mại. Dylan cố gắng chỉ ra vấn vấn đề hiệu suất tiềm ẩn bằng cách giới thiệu giới hạn "tự nhiên" cho các tính năng linh hoạt hoàn toàn của hệ thống Lisp, cho phép trình biên dịch hiểu rõ các đơn vị có thể biên dịch, ví dụ như thư viện.Dylan vay mượn phần lớn ngữ nghĩa từ Scheme và các ngôn ngữ Lisps khác; một vài hiện thực Dylan ban đầu được xây dựng trong các hệ thống Lisp còn tồn tại. Tuy nhiên, Dylan có cú pháp giống với ALGOL thay vì cú pháp tiền tố giống Lisp.